package br.com.cultbook.service;

import java.rmi.RemoteException;
import java.util.List;

import javax.ejb.Stateless;

import br.com.cultbook.dao.ItemPedidoDAO;
import br.com.cultbook.model.ItemPedido;

@Stateless
public class ItemPedidoService extends CultBookService implements ICultBookServices<ItemPedido>{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Override
	public void incluir(ItemPedido t) throws RemoteException {
		new ItemPedidoDAO().incluir(em, t);
	}

	@Override
	public void alterar(ItemPedido t) throws RemoteException {
		new ItemPedidoDAO().alterar(em, t);		
	}

	@Override
	public void excluir(long id) throws RemoteException {		
		try{
			final ItemPedido t = this.buscarPorId(id);
			new ItemPedidoDAO().excluir(em, t);
		} catch (Exception e) {
			throw new RemoteException("Existem registros associados ao que se pretende excluir.");
		}		
	}

	@Override
	public ItemPedido buscarPorId(long id) throws RemoteException {		
		return em.find(ItemPedido.class, id);
	}

	@Override
	public List<ItemPedido> pesquisar(String key) throws RemoteException {
		return new ItemPedidoDAO().pesquisar(em, key);
	}

	@Override
	public List<ItemPedido> buscarTodos() throws RemoteException {
		return new ItemPedidoDAO().buscarTodos(em);
	}
}
